Broadcasting between subnetworks connected via a router

ABSTRACT

The present invention allows the contents of network-wide broadcast in a first subnetwork to be passed to a second subnetwork even if a router is set to prevent the network-wide broadcast in the first subnetwork from going out of the first subnetwork. In response to the network-wide broadcast in the first subnetwork, a first broadcast relay generates a packet in which a destination address of the network-wide broadcast packet is changed to an address of a second broadcast relay belonging to a second subnetwork, and outputs the address changed packet to the first subnetwork. The second broadcast relay generates, in response to the packet addressed thereto, a second subnetwork-only broadcast as a local broadcast, and outputs it to the second subnetwork. A server of the second subnetwork performs a predetermined process on the broadcast outputted by the second broadcast relay.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.10/795,949, filed Mar. 8, 2004, now U.S. Pat. No. 7,408,934 which claimspriority of Japanese application Serial No. 2003-067725, filed Mar. 13,2003.

FIELD OF THE INVENTION

The present invention relates to a broadcast processing system, abroadcast processing apparatus, sending broadcast processing apparatus,receiving broadcast processing apparatus, broadcast processing method,sending broadcast processing method, receiving broadcast processingmethod, broadcast processing program, sending broadcast processingprogram and receiving broadcast processing program for performing apredetermined process as to a broadcast generated in a subnetwork, andin particular, to the broadcast processing system, broadcast processingapparatus, sending broadcast processing apparatus, receiving broadcastprocessing apparatus, broadcast processing method, sending broadcastprocessing method, receiving broadcast processing method, broadcastprocessing program, sending broadcast processing program and receivingbroadcast processing program capable of conveying a network-widebroadcast generated in a predetermined subnetwork to another desiredsubnetwork even if passage of the network-wide broadcast is limited by arouter or the like.

BACKGROUND ART

In the IP (Internet Protocol), a subnetwork-only broadcast called alocal broadcast, and a network-wide broadcast are defined. In order toavoid unnecessary traffic and achieve security, a router is configuredto prevent the network-wide broadcast from going out of a subnetwork.However, it may happen that a broadcast generated in a predeterminedsubnetwork should desirably be notified to a predetermined externalsubnetwork.

Background Art 1:

In the case where subnetworks A1 and A2 included in a network adoptingDHCP (Dynamic Host Configuration Protocol) are a subnetwork having noDHCP server therein and a subnetwork having a DHCP server therein,respectively, when a DHCP client in the subnetwork A1 outputs anetwork-wide broadcast (255.255.255.255) inside the subnetwork A1 forthe sake of requesting an IP address, a DHCP relay agent in thesubnetwork A1 changes the address of the IP packet related to thenetwork-wide broadcast to the address of the DHCP server in thesubnetwork A2 and outputs it to the subnetwork A1 so that the packetwill reach the DHCP server in the subnetwork A2.

Background Art 2:

In a network including an IBM Director server and an IBM Directorbroadcast relay agent, the server outputs to a subnetwork B1 a packethaving a destination address which is the one of the broadcast relayagent in a subnetwork B2 different from the subnetwork B1 to which theserver belongs. Upon receiving the packet, the broadcast relay agent inthe subnetwork B2 outputs a broadcast for the subnetwork B2 to thesubnetwork B2.

Problems of the background art 1 are as follows.

(1) Among the broadcasts generated in the subnetwork A1, it is only aDHCP broadcast that has its contents notified to another subnetwork A2.

(2) The DHCP server in the subnetwork A2 only uses a unicast receivedfrom the DHCP relay agent in the subnetwork A1 for the sake of its ownprocessing, and any host in the subnetwork A2 is not informed of thecontents of broadcast in the subnetwork A1.

Problems of the background art 2 are as follows.

(1) The IBM Director server in the subnetwork B1 only sends a notice ofbroadcast for the subnetwork B2 to the broadcast relay agent in thesubnetwork B2 for its own use, and the contents of network-widebroadcast generated by any host in the subnetwork B1 are not notified tothe subnetwork B2.

(2) For a network-wide broadcast generated by any host in the subnetworkB1, its contents are not notified to any host in the subnetwork B2.

(3) Any host belonging to the subnetwork B1 other than the IBM Directorserver must know the existence and address of the broadcast relay agentin advance to pass a broadcast to the subnetwork B2 via the broadcastrelay agent.

SUMMARY OF THE INVENTION

An object of the present invention is to provide a broadcast processingsystem, broadcast processing apparatus, sending broadcast processingapparatus, receiving broadcast processing apparatus, broadcastprocessing method, sending broadcast processing method, receivingbroadcast processing method, broadcast processing program, sendingbroadcast processing program and receiving broadcast processing programcapable of, despite existence of a router which blocks transmission ofnetwork-wide broadcasts from a first subnetwork to a second subnetwork,treating a predetermined network-wide broadcast in the first subnetworkas the one generated in the second subnetwork.

Another object of the present invention is to provide a broadcastprocessing system, broadcast processing apparatus, sending broadcastprocessing apparatus, receiving broadcast processing apparatus,broadcast processing method, sending broadcast processing method,receiving broadcast processing method, broadcast processing program,sending broadcast processing program and receiving broadcast processingprogram capable of, despite existence of a router which blockstransmission of network-wide broadcasts from the second subnetwork tothe first subnetwork, treating a predetermined network-wide broadcast inthe second subnetwork as the one generated in the first subnetwork.

A further object of the present invention is to provide a broadcastprocessing system, broadcast processing apparatus, sending broadcastprocessing apparatus, receiving broadcast processing apparatus,broadcast processing method, sending broadcast processing method,receiving broadcast processing method, broadcast processing program,sending broadcast processing program and receiving broadcast processingprogram allowing hosts in the first and second subnetworks tocommunicate with each other by the network-wide broadcast in whichcommunication of the network-wide broadcast between the first and secondsubnetworks is blocked by the router.

The broadcast processing system of the present invention has thefollowing.

-   -   One or more first routers for preventing a network-wide        broadcast packet in a first subnetwork from reaching a second        subnetwork which is different from the first subnetwork;    -   A first broadcast relay belonging to the first subnetwork for,        upon detecting the network-wide broadcast packet in the first        subnetwork, generating a unicast address changed packet in which        a destination address of the network-wide broadcast packet is        changed to an address of a second broadcast relay belonging to        the second subnetwork and outputting the address changed packet        inside the first subnetwork; and    -   The second broadcast relay belonging to the second subnetwork        for, upon receiving a packet addressed thereto, generating a        first-type broadcast packet in which the destination address of        the received packet is changed to the one related to a        first-type broadcast, and outputting the first-type broadcast        packet inside the second subnetwork.

The broadcast processing system of the present invention described abovemay additionally include one or more of the following technical matters(a1) to (a5) in any combination.

(a1) One or more second routers for preventing the address changedpacket in the second subnetwork from reaching the first subnetwork areincluded, wherein the second broadcast relay generates, upon detectingthe address changed packet in the second subnetwork, a unicast addresschanged packet in which a destination address of the network-widebroadcast packet is changed to an address of the first broadcast relayand outputs the address changed packet inside the second subnetwork, andthe first broadcast relay generates, upon receiving a packet whosedestination address is its own address, a first-type broadcast packet inwhich the destination address of the address changed packet is changedto the one related to a first-type broadcast and outputs the first-typebroadcast packet inside the first subnetwork.

(a2) The first-type broadcast is a broadcast dedicated to the subnetworkin which it is outputted.

(a3) The first router includes a router for preventing the addresschanged packet in the first subnetwork from going out of the firstsubnetwork, and the second router includes a router for preventing theaddress changed packet in the second subnetwork from going out of thesecond subnetwork.

(a4) The first and second subnetworks are interconnected via asubnetwork other than the first and second subnetworks, or the Internet.

(a5) There exist a plurality of the second subnetworks having networkaddresses which are different from each other, the second broadcastrelay exists in each second subnetwork, and upon detecting onenetwork-wide broadcast packet, the first broadcast relay generates aplurality of address changed packets, from the one network-widebroadcast packet, in which the destination address of the onenetwork-wide broadcast packet is changed to the addresses of therespective second broadcast relays and outputs the plurality of addresschanged packets inside the first subnetwork.

A single router may function as both the first and second routers. Thepacket may be the one compliant with an IP, or IP packet. In the IPpacket, the destination address exists in an IP header. The presentinvention can use the TCP/IP and UDP/IP standards. The first-typebroadcast may be a network-wide broadcast as well as a subnetwork-onlybroadcast. In a small-scale network having a few segments, it may beassured that a router for controlling incoming and outgoing of thepackets in the subnetwork to which a receiving broadcast relay belongsdoes not allow the network-wide broadcast to go out of the subnetwork.In such a case, for a unicast received by the second or first broadcastrelay from the first or second broadcast relay, a broadcast to beoutputted to the second or first subnetwork may be a network-widebroadcast instead of a local broadcast as a subnetwork-only broadcast.

The broadcast processing apparatus of the present invention has asending broadcast processing apparatus and receiving broadcastprocessing apparatus belonging to the first and second subnetworks,respectively. The sending broadcast processing apparatus hasnetwork-wide broadcast detecting means for detecting a network-widebroadcast in the first subnetwork, address changed packet generatingmeans for generating a unicast address changed packet in which adestination address of a network-wide broadcast packet related to thenetwork-wide broadcast detected by the network-wide broadcast detectingmeans is changed to the address of the receiving broadcast processingapparatus, and address changed packet outputting means for outputtingthe address changed packet inside the first subnetwork. The receivingbroadcast processing apparatus has receiving means for receiving apacket addressed to the receiving broadcast processing apparatus,first-type broadcast packet generating means for generating a first-typebroadcast packet in which the destination address of the packet receivedby the receiving means is changed to the one related to a first-typebroadcast, and broadcast outputting means for outputting the first-typebroadcast packet generated by the first-type broadcast packet generatingmeans inside the second subnetwork.

The broadcast processing apparatus of the present invention describedabove may additionally include one or more of the following technicalmatters (b1) and (b2) in any combination.

(b1) The first-type broadcast is a broadcast dedicated to the subnetworkin which it is outputted.

(b2) The first and second subnetworks are interconnected via asubnetwork other than the first and second subnetworks, or the Internet.

The broadcast processing method of the present invention has a sendingbroadcast processing method and a receiving broadcast processing methodto be implemented respectively by a sending broadcast processingapparatus and a receiving broadcast processing apparatus belonging tothe first and second subnetworks, respectively. The sending broadcastprocessing method has a network-wide broadcast detecting step ofdetecting a network-wide broadcast in the first subnetwork, an addresschanged packet generating step of generating a unicast address changedpacket in which a destination address of a network-wide broadcast packetrelated to the network-wide broadcast detected by the network-widebroadcast detecting step is changed to the address of the receivingbroadcast relay, and an address changed packet outputting step ofoutputting the address changed packet inside the first subnetwork. Thereceiving broadcast processing method has a receiving step of receivinga packet addressed to the receiving broadcast relay, a first-typebroadcast packet generating step of generating a first-type broadcastpacket in which a destination address of the packet received by thereceiving step is changed to the one related to a first-type broadcast,and a broadcast outputting step of outputting the first-type broadcastpacket generated by the first-type broadcast packet generating stepinside the second subnetwork.

The broadcast processing method of the present invention described abovemay additionally include one or more of the following technical matters(c1) and (c2) in any combination.

(c1) The first-type broadcast is a broadcast dedicated to the subnetworkin which it is outputted.

(c2) The first and second subnetworks are interconnected via asubnetwork other than the first and second subnetworks, or the Internet.

The broadcast processing program of the present invention causes acomputer to execute the steps of the aforementioned broadcast processingmethod. The sending broadcast processing program of the presentinvention causes the computer to execute the steps of the aforementionedsending broadcast processing method. The receiving broadcast processingprogram of the present invention causes the computer to execute thesteps of the aforementioned receiving broadcast processing method.

In one aspect, broadcast processing systems are provided comprising afirst subnetwork comprising a first device and a first broadcast relay;a router in communication with the first subnetwork; and a secondsubnetwork different from the first subnetwork and in communication withthe router, the second subnetwork comprising a second device and asecond broadcast relay. The router is configured to prevent a firstsubnetwork network wide broadcast packet from the first subnetwork fromreaching the second subnetwork. The first broadcast relay is configuredto detect a first subnetwork network wide broadcast packet from thefirst device in the first subnetwork, and in response to the detectedpacket having a first subnetwork network-wide destination address, abroadcast host address and a destination port number, generate a unicastaddress changed packet from the detected packet by changing the networkwide destination address to a unicast address of the second broadcastrelay in the second subnetwork, and output said unicast address changedpacket through the router to the second broadcast relay. The secondbroadcast relay is configured to receive in said second subnetwork theunicast address changed packet addressed to said second receivingbroadcast relay, generate a second subnetwork-type broadcast packet bychanging the destination unicast address of the packet received by saidsecond receiving broadcast relay to an address related to a secondsubnetwork-type broadcast, and output said generated secondsubnetwork-type broadcast packet inside said second subnetwork. Thesecond subnetwork second device is configured to receive the secondsubnetwork-type broadcast packet, check a port number of a protocolsegment of the received second subnetwork-type broadcast packet, andperform a predetermined process if the port number corresponds to aprocess of the second device or take no action if the port number doesnot correspond to a process of the second device.

In another aspect, articles of manufacture are provided comprising acomputer readable medium, the computer readable medium comprisingcomputer executable program code, wherein the program code, whendeployed and executed on a computer system, causes the computer systemto, in response to detecting a first subnetwork network wide broadcastpacket in a first subnetwork, the packet having a first subnetworknetwork-wide destination address, a broadcast host address and adestination port number, generate a unicast address changed packet fromthe detected packet by changing the network wide destination address toa unicast address of a second broadcast relay in the second subnetwork;output said unicast address changed packet through a router to thesecond broadcast relay, the router configured to prevent the firstsubnetwork network wide broadcast packet from reaching the secondsubnetwork; cause the second broadcast relay to generate a secondsubnetwork-type broadcast packet by changing the destination unicastaddress of the unicast address changed packet to an address related to asecond subnetwork-type broadcast in said second subnetwork; cause thesecond broadcast relay to output said generated second subnetwork-typebroadcast packet inside said second subnetwork; and cause the seconddevice on the second subnetwork to receive the second subnetwork-typebroadcast packet, check a port number of a protocol segment of thesecond subnetwork-type broadcast packet; and perform a predeterminedprocess if the port number corresponds to a process of the second deviceor take no action if the port number does not correspond to a process ofthe second device.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a block diagram of a broadcast processing system;

FIG. 2 is a block diagram of a different broadcast processing system;

FIG. 3 is a block diagram of a further different broadcast processingsystem;

FIG. 4 is a block diagram of a broadcast processing apparatus;

FIG. 5 is a flowchart of a broadcast processing method; and

FIG. 6 is a hardware block diagram for executing a program related tothe flowchart in FIG. 5.

PREFERRED EMBODIMENT OF THE INVENTION

The embodiment of the present invention will now be concretelydescribed. It should be noted that the present invention is not limitedto the embodiment and various modifications may be made withoutdeparting from the gist of the invention. FIG. 1 is a block diagram of abroadcast processing system 10. A router 13 is interposed between asubnetwork A (reference numeral 11) and a subnetwork B (referencenumeral 12), and refers to a destination address of each IP packet inthe subnetwork A and in the subnetwork B so as to control passage of theIP packet based on the reference. A header of the IP packet includesinformation on destination and source addresses. In the IP, the IPpacket having the destination address of 255.255.255.255 is defined asthe one for network-wide broadcast. Also, the IP packet having a hostaddress of all 1's in the destination address is defined as the one forbroadcast dedicated to a network indicated by a network address in thedestination address. From the viewpoint of traffic control and securityin the broadcast processing system 10, the router 13 is set to preventnetwork-wide broadcasts generated in the subnetworks A and B from goingout of the respective subnetworks A and B. A server 15 is connected tothe subnetwork B, and a broadcast relay A (reference numeral 18) and abroadcast relay B (reference numeral 19) are connected to thesubnetworks A and B, respectively. A plurality of clients 14 areconnected to the subnetwork A, and output network-wide broadcasts to thesubnetwork A as required. Some broadcasts outputted by the clients 14 tothe subnetwork A may have the contents to be processed by the server 15.

The operation of the broadcast processing system 10 will be described onthe assumption that it is compliant with TCP/IP and TCP/UDP. A client 14outputs a network-wide broadcast to the subnetwork A. Upon detecting apacket for the network-wide broadcast, the broadcast relay A generatesan address changed packet in which the destination address of thenetwork-wide broadcast packet is changed to the IP address of thebroadcast relay B. The address changed packet is for unicast because itis addressed to the broadcast relay B. The broadcast relay A outputs theaddress changed packet generated from the packet for the network-widebroadcast to the subnetwork A. Since the address changed packet is forthe unicast and it is addressed to a host outside the subnetwork A, therouter 13 sends the address changed packet to the outside of thesubnetwork A so that the address changed packet reaches the subnetworkB. When the broadcast relay B detects an IP packet (the address changedpacket from the broadcast relay A is naturally included in this IPpacket) in which a destination address is the IP address of thebroadcast relay B, the broadcast relay B generates a local broadcastpacket in which the destination address of the address changed packet ischanged to the IP address related to subnetwork B-only broadcast (thisbroadcast is called “local broadcast” because it is dedicated to thesubnetwork B), and then outputs the local broadcast packet to thesubnetwork B. The server 15 receives the local broadcast packet, andperforms a predetermined process based on its port number (typically, adestination port number only). The results of the processing operationby the server 15 are outputted to the subnetwork B by the IP packetrelated to the network-wide broadcast.

When the broadcast relay B detects the network-wide broadcast in thesubnetwork B, the broadcast relay B generates an address changed packetin which the destination address of the network-wide broadcast packet orIP packet related to the network-wide broadcast is changed to thebroadcast relay A, and then outputs the address changed packet to thesubnetwork B. Since the address changed packet is for the unicast andits destination address is outside the subnetwork B, the router 13 sendsthe address changed packet to the outside of the subnetwork B so thatthe address changed packet reaches the subnetwork A. When the broadcastrelay A detects the IP packet in which the destination address is the IPaddress of the broadcast relay A, the broadcast relay A generates alocal broadcast packet in which the destination address of the IP packetis changed to the IP address related to subnetwork A-only broadcast, andthen outputs the local broadcast packet to the subnetwork A. Apredetermined client 14 receives the local broadcast packet, andperforms a predetermined process based on its port number (typically,the destination port number only).

Thus, a client 14 in the subnetwork A can output the network-widebroadcast to the subnetwork A to have the predetermined processperformed by the server 15 belonging to the subnetwork B different fromthe subnetwork A, and receive its results from the server 15. In thiscase, a host H1 which has delivered to the subnetwork A the network-widebroadcast desired to be sent to the subnetwork B and a host H2 whichprocesses the broadcast delivered inside the subnetwork A as a replyfrom a predetermined host in the subnetwork B do not need to be thesame, that is, they may be different from each other.

The present invention may be applied to WOL (Wake On LAN) and PXE(Preboot eXecution Environment). In the case of the WOL, a WOL signal isdelivered by the broadcast to a network card of every sleeping host (ahost is said to be “sleeping” if the host itself is powered off whileits network card is powered on), and the sleeping host wakes when itreceive the WOL signal. The PXE is executed on the host thus waken. ThePXE is a mechanism for loading an OS startup boot program on the hostvia the network. A PXE boot request is implemented as a DHCP option. Ahost Hw which delivers the WOL and a host Hp which is waken by the WOLand issues the PXE request may exist in different subnetworks,respectively, and the WOL and PXE request are delivered by thenetwork-wide broadcast. Also, a server Hs which provides the OS startupboot program in response to the PXE request may exist in the samenetwork as Hw or exist in a subnetwork other than those to which Hw andHp belong to. According to the present invention, it is possible toimplement the WOL and PXE in the hosts belonging to differentsubnetworks without trouble.

FIG. 2 shows another configuration of the broadcast processing system10. The same components as those in FIG. 1 are denoted by the samereference numerals as in FIG. 1, which will not be described further,and the differences from the configuration in FIG. 1 will be mainlydescribed. Routers 21 and 22 are provided at connection points forconnecting the subnetworks A and B to an external network so as tocontrol passage of IP packets to the inside and outside of thesubnetworks A and B. Network-wide broadcasts of the subnetworks A and Bare prevented from passing to the outside of the subnetworks A and B bythe routers 21 and 22, respectively. The routers 21 and 22 areinterconnected via a communication channel such as the Internet 23. Theaddress changed packet in which the broadcast relay A has changed thedestination address of the network-wide broadcast packet in thesubnetwork A to the IP address of the broadcast relay B and the addresschanged packet in which the broadcast relay B has changed thedestination address of the network-wide broadcast packet in thesubnetwork B to the IP address of the broadcast relay A pass the routers21 and 22 and reach the subnetworks B and A, respectively, via thecommunication channel such as the Internet 23. Even if the subnetworks Aand B are not adjacent to each other, and one or more communicationchannels such as the Internet 23 or other channels (the channels mayinclude subnetworks) are interposed therebetween, it is possible, by thesame operation as that described with reference to FIG. 1, to pass thenetwork-wide broadcasts in the subnetworks B and A to the subnetworks Aand B, respectively.

FIG. 3 shows a further configuration of the broadcast processing system10. The same components as those in FIG. 2 are denoted by the samereference numerals, which will not be described further, and thedifferences from the configuration of FIG. 2 will be mainly described.In the configuration of FIG. 3, a subnetwork C (reference numeral 25) isadded to the configuration of FIG. 2. A server C (reference numeral 26),broadcast relay C (reference numeral 27) and router 28, each of which isassociated with the subnetwork C, correspond to the broadcast relay B,server B (reference numeral 15) and router 22 of the subnetwork B,respectively. The router 28 controls passage of IP packets to the insideand outside of the subnetwork C. Like the routers 21 and 22, the router28 prevents the network-wide broadcast in the subnetwork C from goingout of the subnetwork C. The routers 21, 22 and 28 are interconnected bya plurality of communication channels 29 including the Internet 23 (FIG.2). One of the clients 14 belonging to the subnetwork A outputs anetwork-wide broadcast to the subnetwork A. When the broadcast relay Adetects the network-wide broadcast packet, the broadcast relay Agenerates a unicast address changed packet B in which the destinationaddress of the network-wide broadcast packet is changed to the IPaddress of the broadcast relay B and a unicast address changed packet Cin which the destination address of the network-wide broadcast packet ischanged to the IP address of the broadcast relay C, and outputs theaddress changed packets B and C to the subnetworks A. Since the addresschanged packets B and C are unicast packets and have the destinationaddresses outside the subnetworks A, the router 13 sends the addresschanged packets to the outside of the subnetwork A so that the addresschanged packets reach the subnetworks B and C. When the broadcast relaysB and C detect the address changed packets B and C which are IP packetsin which the destination addresses are the IP addresses of the broadcastrelays B and C, respectively, the broadcast relays B and C generatelocal broadcast packets in which the destination addresses of the IPpackets are changed to the IP addresses related to the broadcastsdedicated to the subnetworks B and C, and then output the localbroadcast packets to the subnetworks B and C, respectively. Thereafter,the servers B and C receive the local broadcast packets. Each of theservers B and C checks a port number of a segment related to TCP(Transmission Control Protocol) or UDP (User Datagram Protocol) in thereceived packet, and performs a predetermined process if the port numbercorresponds to its own process. Typically, a network-wide broadcastdelivered by one client 14 corresponds to a process to be performed byeither the server B or C. Even when the servers B and C receive thelocal broadcast packets, they do nothing if the packets are not of theprocesses to be performed by them.

For convenience of description, the following description will be givenon the assumption that the network-wide broadcast delivered by theclient 14 this time is the one to be processed by the server C. Theresults of processing by the server C are outputted to the subnetwork Cby a network-wide broadcast packet. In response to the network-widebroadcast outputted by the server C, the broadcast relay C generates anaddress changed packet which is an IP packet in which only thedestination address of the network-wide broadcast packet is changed tothe IP address of the broadcast relay A, and then outputs the addresschanged packet to the subnetwork C. The address changed packet passesthe routers 28 and 21 and reaches the subnetwork A. When the broadcastrelay A receives the IP packet whose destination address is the IPaddress of the broadcast relay A, the broadcast relay A changes thedestination address of the IP packet to the IP address corresponding tothe subnetwork A-only broadcast, and outputs it to the subnetwork A. Theclient 14 receives the local broadcast IP packet outputted by thebroadcast relay A to obtain thereby the results of processing from theserver C for the process request which the client 14 has issued by meansof the network-wide broadcast.

FIG. 4 shows a configuration of a broadcast processing apparatus 33having a sending broadcast processing apparatus 35 and receivingbroadcast processing apparatus 44. Each of the aforementioned broadcastrelays A, B and C implements both the sending broadcast processingapparatus 35 and receiving broadcast processing apparatus 44. Thebroadcast relays A, B and C may function as the sending broadcastprocessing apparatus 35 or may function as the receiving broadcastprocessing apparatus 44. For convenience of description, it is assumedthat the sending broadcast processing apparatus 35 and receivingbroadcast processing apparatus 44 are implemented in the broadcastrelays A and B, respectively. The sending broadcast processing apparatus35 has a network-wide broadcast detecting means 36 for detecting thenetwork-wide broadcast in the subnetwork A, address changed packetgenerating means 37 for generating a unicast address changed packet inwhich the destination address of the network-wide broadcast packetrelated to the network-wide broadcast detected by the network-widebroadcast detecting means 36 is changed to the address of the receivingbroadcast processing apparatus 44, and address changed packet outputtingmeans 38 for outputting the address changed packet inside the subnetworkA. Since the address changed packet outputted inside the subnetwork A bythe address changed packet outputting means 38 is a unicast IP packetand its destination address is outside the subnetwork A, it passes therouter 13 to reach the subnetwork B. The receiving broadcast processingapparatus 44 has an addressed-to packet receiving means 45 for receivinga packet whose destination address specifies the receiving broadcastprocessing apparatus 44 (=a host implementing the receiving broadcastprocessing apparatus 44), first-type broadcast generating means 46 forgenerating a first-type broadcast packet in which the destinationaddress of the addressed-to packet received by the receiving means 45 ischanged to the one related to a first-type broadcast, and first-typebroadcast outputting means 47 for outputting the first-type broadcastpacket generated by the first-type broadcast generating means 46 insidethe subnetwork B. Thus, it is possible to convey the network-widebroadcast delivered by a client 14 belonging to the subnetwork A to theserver 15 belonging to the subnetwork B different from the subnetwork A.The client 14 can receive the results of processing of the server 15 forits process request without trouble. The first-type broadcast is, forexample, a broadcast dedicated to the subnetwork to which the receivingbroadcast processing apparatus 44 belongs, that is, subnetwork-only orlocal broadcast.

FIG. 5 is a flowchart of the broadcast processing method according tothe present invention. The broadcast processing method has a sendingportion 54 and receiving portion 59. The sending portion 54 andreceiving portion 59 are implemented in the sending broadcast processingapparatus and receiving broadcast processing apparatus, respectively.The sending portion 54 includes steps S55 to S57 and the receivingportion 59 includes steps S60 to S62. S55 (network-wide broadcastdetecting step) detects a network-wide broadcast in a first subnetwork.S56 (address changed packet generating step) generates a unicast addresschanged packet in which the destination address of the network-widebroadcast packet related to the network-wide broadcast detected in S55is changed to the address of the receiving broadcast processingapparatus. S57 (address changed packet outputting step) outputs theaddress changed packet inside the first subnetwork. S60 (receiving step)receives a packet in which the destination address is the address of thereceiving broadcast processing apparatus. S61 (first-type broadcastgenerating step) generates a first-type broadcast packet in which thedestination address of the packet received in S60 is changed to the onerelated to the first-type broadcast. S62 (first-type broadcastoutputting step) outputs the first-type broadcast packet generated inS61 inside a second subnetwork. The first-type broadcast is, forexample, a broadcast dedicated to the subnetwork to which it isoutputted.

FIG. 6 shows a hardware configuration for executing the program relatedto the flowchart of FIG. 5. Each step of the method related to theflowchart of FIG. 5 can be executed by using the hardware shown in FIG.6. A system bus 73 has a CPU 74, main storage 75 and input/output device76 connected thereto. The method related to the flowchart of FIG. 5described above is executable as a coded program. The input/outputdevice 76 includes an auxiliary storage such as a hard disk drivestoring the program, and the program is stored in the main storage 75before execution by the CPU 74. The CPU 74 executes the program bysequentially reading instructions of the program from the main storage75.

ADVANTAGES OF THE INVENTION

According to the present invention, even if a router is set to prevent anetwork-wide broadcast from going out of a subnetwork, it is possible tosend the network-wide broadcast in a first subnetwork to each host in asecond subnetwork different from the first subnetwork.

1. A broadcast processing system comprising: a first subnetworkcomprising a first device and a first broadcast relay; a router incommunication with the first subnetwork; and a second subnetworkdifferent from the first subnetwork and in communication with therouter, the second subnetwork comprising a second device and a secondbroadcast relay; wherein the router is configured to prevent a firstsubnetwork network wide broadcast packet from the first subnetwork fromreaching the second subnetwork; wherein the first broadcast relay isconfigured to detect a first subnetwork network wide broadcast packetfrom the first device in the first subnetwork, and in response to thedetected packet having a first subnetwork network-wide destinationaddress, a broadcast host address and a destination port number,generate a unicast address changed packet from the detected packet bychanging the network wide destination address to a unicast address ofthe second broadcast relay in the second subnetwork, and output saidunicast address changed packet through the router to the secondbroadcast relay; wherein the second broadcast relay is configured toreceive in said second subnetwork the unicast address changed packetaddressed to said second receiving broadcast relay, generate a secondsubnetwork-type broadcast packet by changing the destination unicastaddress of the packet received by said second receiving broadcast relayto an address related to a second subnetwork-type broadcast, and outputsaid generated second subnetwork-type broadcast packet inside saidsecond subnetwork; and wherein the second subnetwork second device isconfigured to receive the second subnetwork-type broadcast packet, checka port number of a protocol segment of the received secondsubnetwork-type broadcast packet, and perform a predetermined process ifthe port number corresponds to a process of the second device or take noaction if the port number does not correspond to a process of the seconddevice.
 2. The broadcast processing system according to claim 1, whereinsaid second subnetwork-type broadcast is a broadcast dedicated to thesubnetwork in which it is outputted.
 3. The broadcast processing systemaccording to claim 2, comprising another router and a third subnetworkdifferent from said first and second subnetworks, said third subnetworkinterconnecting the first and second subnetworks via the router and theanother router.
 4. The broadcast processing system according to claim 3,wherein the third subnetwork is the Internet.
 5. The broadcastprocessing system according to claim 2, wherein the second device isfurther configured to perform the predetermined process, output aprocess result second subnetwork network wide broadcast packet fromperforming the predetermined process related to the first subnetworknetwork wide broadcast packet; wherein the second broadcast relay isconfigured to detect the result packet, generate a unicast addresschanged packet from the result packet by changing a network widedestination address to a unicast address of the first broadcast relayand output the unicast address changed result packet through the routerto the first broadcast relay; wherein the first broadcast relay isconfigured to receive in said first subnetwork the unicast addresschanged result packet, change the destination unicast address of theresult packet and output said changed result packet to a predeterminedclient on the first subnetwork; and wherein the predetermined client isconfigured to receive the changed result packet, check a port number ofa protocol segment of the changed result packet, and perform apredetermined client process if the port number corresponds to a processof the predetermined client or take no action if the port number doesnot correspond to a process of the predetermined client.
 6. Thebroadcast processing system according to claim 5, wherein the firstsubnetwork broadcast client is configured to broadcast the firstsubnetwork network wide broadcast packet, wherein the first subnetworkpredetermined client is different from the first subnetwork broadcastingclient.
 7. An article of manufacture comprising a computer readablemedium, the computer readable medium comprising computer executableprogram code, wherein the program code, when deployed and executed on acomputer system, causes the computer system to: in response to detectinga first subnetwork network wide broadcast packet in a first subnetwork,the packet having a first subnetwork network-wide destination address, abroadcast host address and a destination port number, generate a unicastaddress changed packet from the detected packet by changing the networkwide destination address to a unicast address of a second broadcastrelay in the second subnetwork; output said unicast address changedpacket through a router to the second broadcast relay, the routerconfigured to prevent the first subnetwork network wide broadcast packetfrom reaching the second subnetwork; cause the second broadcast relay togenerate a second subnetwork-type broadcast packet by changing thedestination unicast address of the unicast address changed packet to anaddress related to a second subnetwork-type broadcast in said secondsubnetwork; cause the second broadcast relay to output said generatedsecond subnetwork-type broadcast packet inside said second subnetwork;and cause the second device on the second subnetwork to receive thesecond subnetwork-type broadcast packet, check a port number of aprotocol segment of the second subnetwork-type broadcast packet; andperform a predetermined process if the port number corresponds to aprocess of the second device or take no action if the port number doesnot correspond to a process of the second device.
 8. The article ofmanufacture of claim 7, the program code comprising instructions which,when executed on the computer system, causes the computer system to:cause the second device to output a process result second subnetworknetwork wide broadcast packet from the processing operation related tothe first subnetwork network wide broadcast packet; cause the secondbroadcast relay to detect the result packet, generate a unicast addresschanged packet from the result packet by changing a network widedestination address to a unicast address of the first broadcast relayand output the unicast address changed result packet through the routerto the first broadcast relay; cause the first broadcast relay to receivein said first subnetwork the unicast address changed result packet,change the destination unicast address of the result packet and outputsaid changed result packet to a predetermined client on the firstsubnetwork; and cause the predetermined client to receive the changedresult packet, check a port number of a protocol segment of the changedresult packet and perform a predetermined client process if the portnumber corresponds to a process of the predetermined client or take noaction if the port number does not correspond to a process of thepredetermined client.